#ifndef NETWORKCORE_H
#define NETWORKCORE_H
#include <QObject>
#include <armadillo>

#include "sys_data_struct.h"
#include "NetworkBase.h"
#include "GenEEGData.h"
#include "ConfigImport.h"


// 皮尔逊相关
class PearsonCor : public NetworkBase 
{
public:
    PearsonCor(ConfigImport*);
    ~PearsonCor();

public:
    arma::rowvec networkCreat(arma::mat &inputData);

private:
    ConfigImport* sys_config;


};





class NetworkCore : public QObject
{
Q_OBJECT

public:
    explicit NetworkCore(QObject *parent = nullptr);
    ~NetworkCore();
    arma::rowvec get_network();
    



public slots:
    void network_created(const GenEEGData &);
signals:
    void send_network(const arma::rowvec &);

private:
    bool networkReady;
    ConfigImport* sys_config;
    NetworkBase* netFunPtr;
    arma::rowvec network;

};


#endif
